package top.infopub.mgr.bpa.service;

import com.github.pagehelper.Page;

import top.infopub.mgr.bpa.domain.EffectPlanDomain;
import top.infopub.mgr.bpa.vo.EffectPlanVo;
import top.infopub.model.bpa.EffectPlan;
import top.infopub.generic.GenericService;
import top.infopub.model.bpa.EffectPlanDetail;

import java.util.List;

public interface EffectPlanService extends GenericService<EffectPlan, String> {

    Page<EffectPlanDomain> selectPageByDomainWhere(Page<EffectPlanDomain> page, EffectPlanVo effectPlanVo);

    Page<EffectPlanDomain> selectMyCheckByDomainWhere(Page<EffectPlanDomain> page, EffectPlanVo effectPlanVo);

    void save(EffectPlan effectPlan, List<EffectPlanDetail> detailList);

    EffectPlanVo queryById(String id);

    /**
     * 根据计划年度和项目编号获取最新的创效计划
     * @param belongsYear 计划年度
     * @param proCode 项目编号
     * @param processStatus 审批状态
     * @return 
     * @see
     */
    EffectPlan selectLastedEffectPlan(EffectPlan effectPlan);
    
}